package br.com.sgh.dao;

import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.criterion.Criterion;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;

public class TituloDAO<T> extends DAO<T> {

    public TituloDAO(Class<T> classe, Session session) {
        super(classe, session);
    }

    public List<T> titulos() {
        List<T> titulos = getEntitys();
        return titulos;
    }

    public List<T> pesquisaTitulos(String descricao) {
        Criterion filtro = Restrictions.like("descricao", "%" + descricao + "%");
        Criteria criteria = criaCriteria().addOrder(Order.asc("descricao"));
        List<T> lista = criteria.add(filtro).list();
        return lista;
    }
    
    public List<T> listaTiulosEmprestado() {
        Criteria criteria = criaCriteria();
        List<T> lista = criteria.list();
        return lista;
    }
}
